查看原文
其他

从数据中获取动态信息:动态模式分解 (DMD) 与物理先验的结合

黄蓥昊 许铮 壁仞科技研究院 2023-02-18


摘要

对复杂事物进行预测,推演,进而能够精确地控制,是人们一直以来的期盼。传统研究中,动力系统通常由已知形式的方程来进行建模。然而,现实场景往往是纷繁复杂的,包含有大量的难以准确描述的非线性过程,无法做到精确预测以及泛化推广。因此基于数据驱动的预测方法吸引了越来越多的关注,这得益于近年来计算机硬件的飞速发展,从海量的信息数据中提取关键信息,使得用大数据方法来处理信息预测结果成为了可能。作为这种思想的发展,本文将介绍一种从数据中(例如一组图片或者视频)获取动态信息的方法——动态模式分解(DMD:Dynamic Mode Decomposition),以及其与物理先验知识结合的衍生方法——piDMD。


引言

通过求解已知具体形式的模型来获取答案一直以来都是动力系统的主流思想。近年来基于数值驱动的科学方法如机器学习和深度学习的崛起,以及计算机硬件的高速更新换代,使得另一种对动态描述的思路也在逐渐被主流科学界接受并使用,这就是基于数据驱动的Koopman视角。而DMD则是基于Koopman视角的一种近似实现方法,在最近几年受到了许多数据科学家们的关注,并在之后结合了神经网络而发扬光大。基于DMD的框架,许多衍生方法也相应诞生。在众多衍生方法中,基于物理先验知识的piDMD更是在实践中取得了不错的效果。


Koopman视角

Koopman视角简而言之就是在适当的假设条件下,通过找到系统状态变量所在的不变子空间,将复杂的非线形问题转化为线性。这个思想早在1931年就被提出[1],不过碍于没有能做大量数值计算的机器,在当时只是一个理念,无法被真正应用。在Koopman视角中,一个动力系统可以在没有模型方程的情况下由观测数据直接描述。

在传统动力学的视角下,描述某个系统动态的方法是求解某些已知的物理模型,例如牛顿第二定律(受力=质量*加速度)


  


该定律能在大部分场景下精确地描述物理系统的演化,例如星体的运动或者水的流动。在其他领域,也可以模仿这种方法来建立微分方程,例如某种新冠病毒传播的模型则可被描述为


  


在这里  为时间,  为包含了易感者,感染者,恢复者,死亡者等相关信息的向量,而  则是基于某些假设下推理出来的已知函数。

 

图1:Koopman视角下的一些应用场景[2]:(a) 流体力学 (b) 流行病学 (c) 等离子体物理 (d) 视频  (e) 脑神经科学  (f) 化学 (g) 电网系统  (h) 机器人


动态模式分解
动态模式分解(DMD:Dynamic Mode Decomposition) 是一种相对较新的对动态的系统进行分解的方法。DMD方法第一次被提出来时是应用在分解复杂的高维流体数据上[3]。之后的十年中被逐渐应用在其他领域图中 (图1)。从传统的流体力学,化学等到对视频的处理,该方法应用的领域正在不断地增加。
那么DMD是如何实现的?举一个简单的例子,假设我们有一组连续的图片或视频且里面包含了对某些物理现象的观测数据,例如水的速度或涡度场 (图2),这些二维的图片或视频 (假设有  张或帧) 则可以拉长成一系列一维的向量,并组成如下两个矩阵

 


在这里,每一张被拉长成一维向量的图片为  ,矩阵  包含了前  组图,矩阵  包含了后  组图。DMD的核心思路则是要把每张图片用一个线性算子  来联系起来

  


利用这个关系我们则能从其中任意一张图来得到其他图,甚至预测该系统的未来的走向。我们可以把这种关系写成一个线性方程


  


在这里  取值为1与  之间。当数据集 (图片组或视频) 足够大并拥有足够信息时,我们甚至可以取  的值,来预测未知的观测数据。


图2:一组水在圆形障碍物的尾流涡度场图,用来展示DMD的核心思想[4]


奇异值分解(SVD)

当我们拥有的图片组或视频比较庞大时,算子  会变得过于巨大而无法被直接求解出来,因此我们需要使用某种方法来尽量缩小数据集并同时保留图片的关键特征值。 DMD的实行则是利用了奇异值分解(SVD:  SingularValue Decomposition)  来对图片进行压缩并提取关键的谱信息。我们可以想象SVD为基于数据的傅里叶变换,它能用从数据中获取的坐标 (基函数) 来表达整个数据集。
在DMD方法中,图片矩阵  是一个  的矩阵,  是每张图片的像素量,  则是图片的数量。在这种情况下  的SVD分解可以被展现为

  


矩阵  ,  均为酉矩阵 (unitary matrix) 并有着转置与逆的对称性


  

*表示矩阵的共轭转置。矩阵  是一个对角矩阵 (拥有非常简单的逆),包含了图片数据集中各种模式频率的幅度 (奇异值) 并从大到小排列,而  ,  则是含有这些模式的细节。

图3:一个简单系统的前三个模式 (mode) 的视觉化,模式1 (mode 1) 拥有着最大的幅度 (能量)

在大部分情况下,像素量  是远远大于图片的数量  。因此SVD可以利用这一特性来减少大量的储存空间,也称之为“经济” SVD (图4a)


 


图片中一般会存在许多可忽略的高频细节,而SVD的一项最大的优势是能将一个超大矩阵进行可控压缩并保留大部分原有的属性。因此我们能去除许多高频信息来更进一步地压缩图片,这又称之为“截断” SVD (图4b)


  

在“截断” SVD中,矩阵  里只有  项最有影响力的特征被保留了下来,因此该矩阵只有  列有意义的信息也称之为  -秩矩阵。


图 4:“经济”与“截断” SVD,可以在视觉上看到原有地矩阵  被大幅度地压缩[5]

我们可以从一张小狗的图片中看到(图5),只用5项模式特征 (原有图片信息的0.57%) 就能捕捉狗的一个模糊的形状。当  的时候 (原有图片信息的2.33%),我们已经可以很清楚的看出小狗的样貌特征。在  的情况下 (原有图片信息的11.67%),我们已经很难将其与原始图片区分开来。从这个例子中,我们不难看出大部分有用的信息只占原始图片不到10%的比例。在图6中我们可以看到,在1500项奇异值特征中,前100项的幅度比其他项都大上几个数量级,并且占据了总系统能量的80%。


图 5:SVD在不同特征项数量中对于图片重组的效果[5]


图6:在图5中的奇异值大小与占据的系统的总能量[5]


SVD与本征正交分解 (POD)和主成分分析 (PCA)在本质上是相同,都是为了提取数据中的特征。但是POD更多被应用于流体领域,PCA则是在统计学里被使用,而SVD更多是用在线性代数领域中。

在神经网络的兴起前,SVD是作为人脸识别的一种主要的技术。然而SVD 对于物体平移或旋转极为敏感,对图片物体位置要求颇为严格,因此被后来更鲁棒 (robust) 的卷积网络,视觉Transformer给取代了。不过SVD在许多科学领域中仍是一种无法被替代的方法。

回到DMD的方法。经过SVD分解后,我们将原先算子  投射到只有  项特征模式的空间,可大幅减少该算子需要的容量


  


经过对于该算子的特征分解和一系列线性代数的推导,我们可以得到一个能预测观测数据在任何时间点的公式


  

 

简单来说,每张图片或每帧视频都能被算子  的特征向量  ,特征值  和初始条件  所表达。这些项分别对应了空间模式 ,时间动态和幅度。推导的细节可以在 [4] 中找到。整个DMD的流程都展现在图7中。


图7:DMD算法的基本流程[4]


基于物理的动态模式分解(piDMD)


传统的DMD方法虽能在大部分情况下产出不错的效果,然而在一些复杂的系统中却无法准确预测出图片组之间的关系,并且对噪音相对敏感且欠缺泛化性。最近[6] 提出了一种基于物理知识的DMD方法,称之为physics-informed dynamic mode decomposition (piDMD)。

在原始DMD算法中,算子  可以从解一个回归问题而得出



这里  对应了之前定义的  。因该问题的维度过于庞大,传统DMD则是加入了对矩阵  低秩 (low-rank)的限制:只选择  -秩矩阵。我们也可以想象这是一种正则化的方法,不仅仅提升了效率也增加了一定的泛化性。然而在许多系统里,这种低秩的特性并不存在,因此会导致DMD产出较差的预测。而piDMD的核心思想则是找到这些系统中的物理特性,用来找到最适合的算子矩阵  

举一个之前提到的水在圆形障碍物的尾流例子,我们可以利用该物理系统中能量守恒的特性,且在DMD的框架下可表达为



我们可以理解为算子  并不会改变系统的能量,而是将能量重新分布至不同时间段的状态向量。而能保持能量守恒的算子则需是酉矩阵。因此需要解的方程有着酉矩阵的限制



可以证明该回归问题已经有解析解


这类通过分析系统特性来寻找近似矩阵的问题也被称为普氏分析 (Procrustes Analysis) [7]。

相较于DMD,能利用系统本身的特性的 piDMD可以获得更准更鲁棒的预测结果。当应用在一组有噪音的观测数据中 (图8),我们可以看到piDMD能更精准的预测系统的模式与谱信息,特别是在传统DMD无法正确预测的高频信息上。


图8:含有噪音的圆柱尾流观测数据[6](红色,蓝色,灰色分别代表DMD,piDMD以及真实的谱信息和第1,5,7,9 POD模式)

在其他具有代表性的系统中,piDMD也拥有类似的性能 (图9)。例如量子力学中的薛定谔方程所对应的系统特性为自伴的厄米特矩阵,平流波方程中平移不变性的循环矩阵,拥有因果效应的Voterra积分微分方程对应的上三角矩阵等等,参考文献[6] 的作者都给出了相对应的解析解。即使面对没有解析解的复杂系统,也有相应的数值方案可以解决,例如 [8]。


图9:piDMD在不同系统里的预测以及对应算子  的数值分布[6](红色,蓝色,灰色分别代表DMD,piDMD以及真实的谱信息)


不过piDMD目前也有一些局限性。当一个系统的数学或物理特性不存在或不是很明显的时候 (例如一组花朵凋谢的图片),我们无法将其转化成矩阵特性来约束piDMD的回归问题。还有当噪音分布与观测数据差别过大时,piDMD的准确度也可能会受到影响。此外在一些特定的问题上,piDMD的运算效率也不是很高。这些问题都有待该领域后续的发展。


总结

本文介绍了基于数据驱动的Koopman视角来描述系统演化的实现方法——动态模式分解 (DMD)。DMD能从数据 (一组图片或视频) 中获取动态信息,用于推理观测数据的过去与未来走向,类似于更精准的外推法。本文还介绍了结合物理先验知识的piDMD方法,使得DMD方法可以达到更好的泛化性、准确性和鲁棒性,尤其是针对于高频模式的信息。

DMD算法只是一种Koopman算子在有限空间上的近似,其假设是观测数据之间可以由线性算子相互关联。然而在许多实际应用中,观测数据本身包含了非线性,无法被线性关联。Koopman分析的主要概念则是找到合适的非线性函数作为基函数使得观测数据在该基函数坐标上可以被一个线性算子关联。因此,利用Koopman算子的特性,可以更好地对系统演化进行预测,例如扩展的DMD (eDMD) 方法和基于神经网络和自解码器的Deep Koopman方法[9],都可用于寻找合适的非线性基函数。有兴趣的读者可以在[2]中找到这些方法的综述。


参考文献

[1] Austin Derrow-Pinion, Jennifer She, David Wong, et al. ETA Predictionwith Graph Neural Networks in Google Maps. 2021

[1] B. O. Koopman, “Hamiltonian Systems and Transformation in Hilbert Space,” Proceedings of the National Academy of Sciences, vol. 17, no. 5, pp. 315–318, May 1931, doi: 10.1073/pnas.17.5.315.

[2] S. L. Brunton, M. Budišić, E. Kaiser, and J. N. Kutz, “Modern Koopman Theory for Dynamical Systems,” Feb. 2021.

[3] P. J. SCHMID, “Dynamic mode decomposition of numerical and experimental data,” Journal of Fluid Mechanics, vol. 656, pp. 5–28, Aug. 2010, doi: 10.1017/S0022112010001217.

[4] J. N. Kutz, S. L. Brunton, B. W. Brunton, and J. L. Proctor, Dynamic Mode Decomposition. Philadelphia, PA: Society for Industrial and Applied Mathematics, 2016. doi: 10.1137/1.9781611974508.

[5] S. L. Brunton and J. N. Kutz, Data-Driven Science and Engineering. Cambridge University Press, 2019. doi: 10.1017/9781108380690.

[6] P. J. Baddoo, B. Herrmann, B. J. McKeon, J. N. Kutz, and S. L. Brunton, “Physics-informed dynamic mode decomposition (piDMD),” Dec. 2021.

[7] J. R. Hurley and R. B. Cattell, “The procrustes program: Producing direct rotation to test a hypothesized factor structure,” Behavioral Science, vol. 7, no. 2, pp. 258–262, Jan. 2007, doi: 10.1002/bs.3830070216.

[8] N. and M. B. and A. P.-A. and S. R. Boumal, “Manopt, a Matlab Toolbox for Optimization on Manifolds,” Journal of Machine Learning Research, vol. 15, no. 42, pp. 1455–1459, 2014, Accessed: Dec. 24, 2021. [Online]. Available: https://www.manopt.org

[9] B. Lusch, J. N. Kutz, and S. L. Brunton, “Deep learning for universal linear embeddings of nonlinear dynamics,” Nature Communications, vol. 9, no. 1, p. 4950, Dec. 2018, doi: 10.1038/s41467-018-07210-0.



 往期推荐

1、视觉神经场:NeRF研究的新视角

2、流体力学与物理导引神经网络

3、基于Object Query的机器视觉新思路: DETR及发展



关于壁仞科技研究院


壁仞科技研究院作为壁仞科技的前沿研究部门,旨在研究新型智能计算系统的关键技术,重点关注新型架构,先进编译技术和设计方法学,并将逐渐拓展研究方向,探索未来智能系统的各种可能。壁仞科技研究院秉持开放的原则,将积极投入各类产学研合作并参与开源社区的建设,为相关领域的技术进步做出自己的贡献。

扫码关注我们


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存